package com.woniuxy.controller;

import com.woniuxy.utils.MinioUtil;
import com.woniuxy.utils.ResponseResults;
import com.woniuxy.utils.ResponseState;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

import javax.annotation.Resource;
import java.util.List;

@Slf4j
@RestController
@RequestMapping("/file")
public class FileController {

    @Resource
    private MinioUtil minioUtil;

    /**
     * String 数据库传来的图片路径
     * springboot中接受文件，使用 MultipartFile
     * */

    @PostMapping("/upload")
    public ResponseResults<String> upload(MultipartFile file){
//        获取文件名
        System.out.println("文件名:"+file.getOriginalFilename());
        // 封装为数组
        MultipartFile[] files = {file};
        List<String> names = minioUtil.upload(files);
        return new ResponseResults<String>()
                .setCode(200)
                .setMsg("上传成功")
                .setData(names.get(0)) // 取出数组中的第一个文件的文件名，并返回
                .setState(ResponseState.UPLOAD_SUCCESS);
    }

}
